const baseConfig = require("./base.config");
// const nodeExternals = require('webpack-node-externals');

module.exports = [
  {
    ...baseConfig,
    output: {
      ...baseConfig.output,
      globalObject: 'this', // 传入this而不是self，解决node环境报错问题
      library: { // 如果不加默认打包后就是一个可执行函数，不会当作外部模块处理
        name: "$fetch", // 模块如果作用在全局时的命名(比如window.$fetch)
        type: "umd",
      },
    },
    // externals: [nodeExternals()] // 第三方库只会被打包成CJS的require引入
    // externals: { // 手动配置可以兼容amd和浏览器等环境
    //   axios: 'axios',
    //   qs: 'qs'
    // }
  },
  {
    ...baseConfig,
    output: {
      ...baseConfig.output,
      filename: "index.mjs",
      library: {
        type: 'module', // 输出格式为 ESM
      },
    },
    experiments: {
      outputModule: true, // 启用 ESM 输出
    },
  }
]